Realtime clocks became a common peripheral system on personal computers in the mid 1980s. There were a number of reasons that these were standardized, one of the most important being the need to maintain some type of non-volatile clock system that could maintain a clock and calendar independent of the power source of the computer. This was typically achieved through the use of a separate battery that was recharged during use of the computer. Another reason that the realtime clock circuit was utilized, was the incorporation of some memory that was rendered non-volatile due to the backup battery. This memory was utilized to store configuration data for the computer. Therefore, upon power up of the computer, this configuration information could be utilized to fully configure the computer and even allow the user to enter customized configuration information. However, early computers needed very little configuration data, and thus memory was not an issue.
As computers have become more sophisticated, the level of configuration provided by the BIOS of the computer has increased the need for memory resources on the realtime clock. Without these memory resources, the user would be required to load this configuration information every time the computer was powered up. It then being lost when the computer powers down. However, there is a limitation to the amount of memory that can be accessed on the realtime clock. This is due to the fact that the original configuration of the realtime clock allowed only seven bits of address space to be allocated to the realtime clock, even in an 8-bit system. This is due to the fact that the eighth bit of addressing in an 8-bit system is dedicated to a non-maskable interrupt (NMI). As such, the seven bits of addressing only allows 128 addressable locations to be accessed, these typically being bytes. Unfortunately, the need for more sophisticated configurations has made this level of addressing and this level of memory inadequate.